package com.zkthink.ceres.pay.wechat.v3.entity.request.profitsharing;

import com.alibaba.fastjson.annotation.JSONField;
import com.zkthink.ceres.pay.wechat.v3.entity.request.BasePayRequest;
import lombok.*;
import lombok.experimental.Accessors;

/**
 * <p>
 * <p>
 * 合单关闭单
 * * 参考文档：https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pay/combine/chapter3_3.shtml
 *
 * @author vivi.huang
 * @since 2020/5/17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Builder(builderMethodName = "newBuilder")
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class DeleteProfitsharingReceiversRequest extends BasePayRequest {

    private static final long serialVersionUID = -8100791351891543014L;



    /**
     * 接收方名称	name	string（256）	条件选填	query 分账接收方的名称，当type为MERCHANT_ID时，接收方名称是商户全称。
     * 示例值：张三网络公司
     */
    @JSONField(name = "name")
    private String name;

    /**
     * 接收方名称的密文	encrypted_name	string（10240）	否	query 1、分账接收方类型是PERSONAL_OPENID时，是个人姓名的密文（选传，传则校验）
     * 此字段的加密的方式为：
     * 2、使用微信支付平台证书中的公钥
     * 3、使用RSAES-OAEP算法进行加密
     * 4、将请求中HTTP头部的Wechatpay-Serial设置为证书序列号
     * 字段加密: 使用APIv3定义的方式加密
     * 示例值：hu89ohu89ohu89o
     */
    @JSONField(name = "encrypted_name")
    private String encryptedName;

    /**
     * 与分账方的关系类型	relation_type	string（32）	是	query 子商户与接收方的关系。
     * 枚举值：
     * SUPPLIER：供应商
     * DISTRIBUTOR：分销商
     * SERVICE_PROVIDER：服务商
     * PLATFORM：平台
     * OTHERS：其他
     * 示例值：SUPPLIER
     */
    @JSONField(name = "relation_type")
    private String relationType;

    @Override
    public String getUrl() {
        return null;
    }

    @Override
    public int getReadTimeoutMs() {
        return 0;
    }

    @Override
    public int getConnectTimeoutMs() {
        return 0;
    }

    @Override
    public String getRequestData() {
        return null;
    }
}